﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace OneOfAll.Common.Models
{
    public class CareerModel : BaseModel
    {
        private string name = string.Empty;
        public string Name
        {
            get { return name; }
            set { name = value; RaisePropertyChanged(); }
        }

        private CareerTypeEnum type = CareerTypeEnum.战斗;
        public CareerTypeEnum Type
        {
            get { return type; }
            set { type = value; RaisePropertyChanged();}
        }

        private int lv_Max = 10;
        public int Lv_Max
        {
            get { return lv_Max; }
            set { lv_Max = value; RaisePropertyChanged(); }
        }

        private int limit_Power = 0;
        public int Limit_Power
        {
            get { return limit_Power; }
            set { limit_Power = value; RaisePropertyChanged(); }
        }

        private int limit_Strong = 0;
        public int Limit_Strong
        {
            get { return limit_Strong; }
            set { limit_Strong = value; RaisePropertyChanged(); }
        }

        private int limit_Trick = 0;
        public int Limit_Trick
        {
            get { return limit_Trick; }
            set { limit_Trick = value; RaisePropertyChanged(); }
        }

        private int limit_Wit = 0;
        public int Limit_Wit
        {
            get { return limit_Wit; }
            set { limit_Wit = value; RaisePropertyChanged(); }
        }

        private int limit_Master = 0;
        public int Limit_Master
        {
            get { return limit_Master; }
            set { limit_Master = value; RaisePropertyChanged(); }
        }

        private int groupUp_Power = 0;
        public int GroupUp_Power
        {
            get { return groupUp_Power; }
            set { groupUp_Power = value; RaisePropertyChanged(); }
        }

        private int groupUp_Strong = 0;
        public int GroupUp_Strong
        {
            get { return groupUp_Strong; }
            set { groupUp_Strong = value; RaisePropertyChanged(); }
        }

        private int groupUp_Trick = 0;
        public int GroupUp_Trick
        {
            get { return groupUp_Trick; }
            set { groupUp_Trick = value; RaisePropertyChanged(); }
        }

        private int groupUp_Wit = 0;
        public int GroupUp_Wit
        {
            get { return groupUp_Wit; }
            set { groupUp_Wit = value; RaisePropertyChanged(); }
        }

        private int master_Power = 0;
        public int Master_Power
        {
            get { return master_Power; }
            set { master_Power = value; RaisePropertyChanged(); }
        }

        private int master_Strong = 0;
        public int Master_Strong
        {
            get { return master_Strong; }
            set { master_Strong = value; RaisePropertyChanged(); }
        }

        private int master_Trick = 0;
        public int Master_Trick
        {
            get { return master_Trick; }
            set { master_Trick = value; RaisePropertyChanged(); }
        }

        private int master_Wit = 0;
        public int Master_Wit
        {
            get { return master_Wit; }
            set { master_Wit = value; RaisePropertyChanged(); }
        }

        private int potentialLength = 3;
        public int PotentialLength
        {
            get { return potentialLength; }
            set { potentialLength = value; RaisePropertyChanged(); }
        }

        private int criticalChance = 5;
        public int CriticalChance
        {
            get { return criticalChance; }
            set { criticalChance = value; RaisePropertyChanged(); }
        }

        private int criticalValue = 120;
        public int CriticalValue
        {
            get { return criticalValue; }
            set { criticalValue = value; RaisePropertyChanged(); }
        }

        private double attackSpeed = 1;
        public double AttackSpeed
        {
            get { return attackSpeed; }
            set { attackSpeed = value; RaisePropertyChanged(); }
        }

        private double attackInterval = 2;
        public double AttackInterval
        {
            get { return attackInterval; }
            set { attackInterval = value; RaisePropertyChanged(); }
        }
    }
}
